/*
   计科1班
   周治铭 140201011022
   编写函数计算最大公约数的函数 int  gcd(int m, int n);
   最小公倍数的函数 int  lcm(int m, int n)
   */
#include<stdio.h>
#include<stdlib.h>
int main()
{
	int a,b,g,l;
	int gcd(int,int);
	int lcm(int,int);
	do{
		printf("input a:");
		scanf("%d",&a);
	}while(a<=0);
	do{
		printf("input b:");
		scanf("%d",&b);
	}while(b<=0);
	g=gcd(a,b);
	l=lcm(a,b);
	printf("最大公约数:%d\n",g);
	printf("最大公倍数:%d\n",l);
	return 0;
}

int gcd(int x,int y)
{
	int min,max,i;
	min=x<y?x:y;
	max=x>y?x:y;
	for(i=min;i>=0;i--){
		if((x%i==0)&&(y%i==0)){
			return i;
		}	
	}
}

int lcm(int x,int y)
{
	int max,i;
	max=x>y?x:y;
	for(i=max;i<=(x*y);i++){
		if((i%x==0)&&(i%y==0)){
			return i;
		}
	}
}
/*
   input a:23
   input b:56
   最大公约数:1
   最大公倍数:1288

   */
